在建立新的測試環境時,先建個空的資料庫再讓ap人員
來新增測試資料會是比較ok的做法,
小弟提供兩種方法供各位參考:
第一個方法比較簡單,但我的經驗有些Table或其它物件會有遺漏...
所以選擇使用第二個方法,但原本要用TRUNCATE指令清空全部TABLE的資料,
發現會卡在Foreign Key的關連性而無法順利清空資料,
只好先disable全部的constraint,再用DELETE進行刪除動作
EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
EXEC sp_MSForEachTable 'DELETE FROM ?'
EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
接著記得要把每張表的indentity計數歸零
EXEC sp_MSForEachTable 'dbcc checkident (?, RESEED, 1)'
既然剛才有大量刪除資料,交易紀錄檔也應該長大了不少,
記得再把交易紀錄檔Shrink一下。